﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ITCR.ProyectoAgricola.Datos;
using ITCR.ProyectoAgricola.Base;
using ITCR.ProyectoAgricola.Negocios;
using System.Data;
using System.Data.SqlTypes;
using System.Data.SqlClient;


namespace ITCR.ProyectoAgricola.Interfaz
{
    public partial class desplegarProyectos : System.Web.UI.Page
    {
        public string valorIdEmpresa;
        public int cantidadProyectos = 0;
        public string identificadorGlobal;
        int identificador = 0;
        int posicion;

        cPROYECTOBase cargarProyecto = new cPROYECTOBase();
        DataTable tablaTodosProyectos = new DataTable();
        DataTable tablaProyectosEmpresa = new DataTable();

        public PDFGenerator pdf = new PDFGenerator();

        protected void Page_Load(object sender, EventArgs e)
        {
            //valorIdEmpresa = Convert.ToString(Request.QueryString["idEmpresa"]);
            valorIdEmpresa = (string)Session["idEmpresa"];

            cEMPRESABase cargarEmpresa = new cEMPRESABase();
            cargarEmpresa.IdEmpresa = int.Parse(valorIdEmpresa);
            cargarEmpresa.SeleccionarUno();
            tituloEmpresa.InnerText = cargarEmpresa.NombreEmpresa.ToString();


            cargarProyecto.IdEmpresa = int.Parse(valorIdEmpresa);
            tablaTodosProyectos = cargarProyecto.SeleccionarTodos();
            

            tablaProyectosEmpresa.Columns.Add(new DataColumn("Identificador", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Provincia", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Canton", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Distrito", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Area", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Cultivos", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("mercadoDestino", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("nivelTecnologico", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Visita", typeof(string)));
            tablaProyectosEmpresa.Columns.Add(new DataColumn("Objetivo", typeof(string)));

  
                for (int i = 0; i < tablaTodosProyectos.Rows.Count; i++)
                {
                    string identificadorEmpresa = tablaTodosProyectos.Rows[i][0].ToString();

                    if (identificadorEmpresa.Equals(valorIdEmpresa))
                    {
                        cantidadProyectos = cantidadProyectos + 1;
                        identificador = identificador + 1;

                        DataRow nuevoRegistro = tablaProyectosEmpresa.NewRow();
                        nuevoRegistro["Identificador"] = identificador.ToString();
                        nuevoRegistro["Provincia"] = tablaTodosProyectos.Rows[i][2].ToString();
                        nuevoRegistro["Canton"] = tablaTodosProyectos.Rows[i][3].ToString();
                        nuevoRegistro["Distrito"] = tablaTodosProyectos.Rows[i][4].ToString();
                        nuevoRegistro["Area"] = tablaTodosProyectos.Rows[i][5].ToString();
                        nuevoRegistro["Cultivos"] = tablaTodosProyectos.Rows[i][6].ToString();
                        nuevoRegistro["mercadoDestino"] = tablaTodosProyectos.Rows[i][7].ToString();
                        nuevoRegistro["nivelTecnologico"] = tablaTodosProyectos.Rows[i][8].ToString();
                        nuevoRegistro["Visita"] = tablaTodosProyectos.Rows[i][9].ToString();
                        nuevoRegistro["Objetivo"] = tablaTodosProyectos.Rows[i][10].ToString();

                        tablaProyectosEmpresa.Rows.Add(nuevoRegistro);

                        //Response.Write("<script>alert('Entra aqui primero');</script>");
                    }
                    else
                    {
                        //ButtonAvanzarProyecto.Enabled = false;
                        //ButtonRetroceder.Enabled = false;
                        //Response.Write("<script>alert('Esta Empresa no tiene ningun Proyecto');</script>");
                    }
                }

                if (!IsPostBack)
                {
                    if (tablaProyectosEmpresa.Rows.Count == 0)
                    {                     
                        LabelIdentificador.Text = "0";

                        proyectoCero.Attributes.Add("Class", "activo");
                        proyectoUno.Attributes.Add("Class", "normal");
                        proyectoDos.Attributes.Add("Class", "normal");
                        proyectoTres.Attributes.Add("Class", "normal");
                        proyectoCuatro.Attributes.Add("Class", "normal");
                        proyectoCinco.Attributes.Add("Class", "normal");
                    }
                    else
                    {
                        proyectoCero.Attributes.Add("Class", "normal");
                        proyectoUno.Attributes.Add("Class", "activo");
                        proyectoDos.Attributes.Add("Class", "normal");
                        proyectoTres.Attributes.Add("Class", "normal");
                        proyectoCuatro.Attributes.Add("Class", "normal");
                        proyectoCinco.Attributes.Add("Class", "normal");

                        LabelIdentificador.Text = tablaProyectosEmpresa.Rows[0][0].ToString();
                        TextProvincia.Text = tablaProyectosEmpresa.Rows[0][1].ToString();
                        TextCanton.Text = tablaProyectosEmpresa.Rows[0][2].ToString();
                        TextDistrito.Text = tablaProyectosEmpresa.Rows[0][3].ToString();
                        TextArea.Text = tablaProyectosEmpresa.Rows[0][4].ToString() + "m2";
                        TextCultivo.Text = tablaProyectosEmpresa.Rows[0][5].ToString();
                        TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[0][6].ToString();
                        TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[0][7].ToString();

                        string visitaNumero = tablaProyectosEmpresa.Rows[0][8].ToString();
                        if (visitaNumero.Equals("1"))
                        {
                            LabelVisitaPermitida.Text = "Si";
                        }
                        else
                        {
                            LabelVisitaPermitida.Text = "No";
                        }

                        TextObjetivo.Text = tablaProyectosEmpresa.Rows[0][9].ToString();
                    }
                }           
        }

        protected void ButtonAvanzarProyecto_Click(object sender, EventArgs e)
        {
            
            if (tablaProyectosEmpresa.Rows.Count == 0)
            {
                proyectoCero.Attributes.Add("Class", "activo");
                proyectoUno.Attributes.Add("Class", "normal");
                proyectoDos.Attributes.Add("Class", "normal");
                proyectoTres.Attributes.Add("Class", "normal");
                proyectoCuatro.Attributes.Add("Class", "normal");
                proyectoCinco.Attributes.Add("Class", "normal");
            }
            else
            {
                posicion = int.Parse(LabelIdentificador.Text) + 1;
                int posicionTabla = int.Parse(LabelIdentificador.Text);

                if (posicion <= tablaProyectosEmpresa.Rows.Count)
                {
                    //Response.Write("<script>alert('Aqui si entra "+ posicionTabla +"');</script>");

                    switch (posicion)
                    {
                        case 0:
                            proyectoCero.Attributes.Add("Class", "activo");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 1:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "activo");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 2:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "activo");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 3:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "activo");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 4:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "activo");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 5:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "activo");
                            break;                          
                    }

                    
                    LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                    TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                    TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                    TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                    TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() + "m2";
                    TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                    TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                    TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                    string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                    if (visitaNumero.Equals("1"))
                    {
                        LabelVisitaPermitida.Text = "Si";
                    }
                    else
                    {
                        LabelVisitaPermitida.Text = "No";
                    }

                    TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
                }
            }
        }

        protected void ButtonRetroceder_Click(object sender, EventArgs e)
        {
            
            if (tablaProyectosEmpresa.Rows.Count == 0)
            {
            }
            else
            {
                posicion = int.Parse(LabelIdentificador.Text) - 2;
                int posicionTabla = int.Parse(LabelIdentificador.Text) - 2;

                if (posicion >= 0)
                {
                    switch (posicionTabla + 1)
                    {
                        case 0:
                            proyectoCero.Attributes.Add("Class", "activo");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 1:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "activo");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 2:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "activo");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 3:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "activo");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 4:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "activo");
                            proyectoCinco.Attributes.Add("Class", "normal");
                            break;
                        case 5:
                            proyectoCero.Attributes.Add("Class", "normal");
                            proyectoUno.Attributes.Add("Class", "normal");
                            proyectoDos.Attributes.Add("Class", "normal");
                            proyectoTres.Attributes.Add("Class", "normal");
                            proyectoCuatro.Attributes.Add("Class", "normal");
                            proyectoCinco.Attributes.Add("Class", "activo");
                            break;
                    }

                    LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                    TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                    TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                    TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                    TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() +"m2";
                    TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                    TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                    TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                    string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                    if (visitaNumero.Equals("1"))
                    {
                        LabelVisitaPermitida.Text = "Si";
                    }
                    else
                    {
                        LabelVisitaPermitida.Text = "No";
                    }

                    TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
                }
            }
        }

        //Evento para el link del Proyecto 1
        public void linkUno_Click(Object sender, EventArgs e)
        {
            int posicionTabla = 0;

            if (tablaProyectosEmpresa.Rows.Count > posicionTabla)
            {
                proyectoCero.Attributes.Add("Class", "normal");
                proyectoUno.Attributes.Add("Class", "activo");
                proyectoDos.Attributes.Add("Class", "normal");
                proyectoTres.Attributes.Add("Class", "normal");
                proyectoCuatro.Attributes.Add("Class", "normal");
                proyectoCinco.Attributes.Add("Class", "normal");

                LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() + "m2";
                TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                if (visitaNumero.Equals("1"))
                {
                    LabelVisitaPermitida.Text = "Si";
                }
                else
                {
                    LabelVisitaPermitida.Text = "No";
                }

                TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
            }
        }

        //Evento para el link del Proyecto 2
        public void linkDos_Click(Object sender, EventArgs e)
        {
            int posicionTabla = 1;

            if (tablaProyectosEmpresa.Rows.Count > posicionTabla)
            {
                proyectoCero.Attributes.Add("Class", "normal");
                proyectoUno.Attributes.Add("Class", "normal");
                proyectoDos.Attributes.Add("Class", "activo");
                proyectoTres.Attributes.Add("Class", "normal");
                proyectoCuatro.Attributes.Add("Class", "normal");
                proyectoCinco.Attributes.Add("Class", "normal");

                LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() + "m2";
                TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                if (visitaNumero.Equals("1"))
                {
                    LabelVisitaPermitida.Text = "Si";
                }
                else
                {
                    LabelVisitaPermitida.Text = "No";
                }

                TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
            }
        }

        //Evento para el link del Proyecto 3
        public void linkTres_Click(Object sender, EventArgs e)
        {
            int posicionTabla = 2;

            if (tablaProyectosEmpresa.Rows.Count > posicionTabla)
            {
                proyectoCero.Attributes.Add("Class", "normal");
                proyectoUno.Attributes.Add("Class", "normal");
                proyectoDos.Attributes.Add("Class", "normal");
                proyectoTres.Attributes.Add("Class", "activo");
                proyectoCuatro.Attributes.Add("Class", "normal");
                proyectoCinco.Attributes.Add("Class", "normal");

                LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() + "m2";
                TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                if (visitaNumero.Equals("1"))
                {
                    LabelVisitaPermitida.Text = "Si";
                }
                else
                {
                    LabelVisitaPermitida.Text = "No";
                }

                TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
            }
        }

        //Evento para el link del Proyecto 4
        public void linkCuatro_Click(Object sender, EventArgs e)
        {
            int posicionTabla = 3;

            if (tablaProyectosEmpresa.Rows.Count > posicionTabla)
            {

                proyectoCero.Attributes.Add("Class", "normal");
                proyectoUno.Attributes.Add("Class", "normal");
                proyectoDos.Attributes.Add("Class", "normal");
                proyectoTres.Attributes.Add("Class", "normal");
                proyectoCuatro.Attributes.Add("Class", "activo");
                proyectoCinco.Attributes.Add("Class", "normal");

                LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() + "m2";
                TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                if (visitaNumero.Equals("1"))
                {
                    LabelVisitaPermitida.Text = "Si";
                }
                else
                {
                    LabelVisitaPermitida.Text = "No";
                }

                TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
            }
        }

        //Evento para el link del Proyecto 5
        public void linkCinco_Click(Object sender, EventArgs e)
        {
            int posicionTabla = 4;

            if (tablaProyectosEmpresa.Rows.Count > posicionTabla)
            {
                proyectoCero.Attributes.Add("Class", "normal");
                proyectoUno.Attributes.Add("Class", "normal");
                proyectoDos.Attributes.Add("Class", "normal");
                proyectoTres.Attributes.Add("Class", "normal");
                proyectoCuatro.Attributes.Add("Class", "normal");
                proyectoCinco.Attributes.Add("Class", "activo");

                LabelIdentificador.Text = tablaProyectosEmpresa.Rows[posicionTabla][0].ToString();
                TextProvincia.Text = tablaProyectosEmpresa.Rows[posicionTabla][1].ToString();
                TextCanton.Text = tablaProyectosEmpresa.Rows[posicionTabla][2].ToString();
                TextDistrito.Text = tablaProyectosEmpresa.Rows[posicionTabla][3].ToString();
                TextArea.Text = tablaProyectosEmpresa.Rows[posicionTabla][4].ToString() + "m2";
                TextCultivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][5].ToString();
                TextMercadoDestino.Text = tablaProyectosEmpresa.Rows[posicionTabla][6].ToString();
                TextNivelTecnologico.Text = tablaProyectosEmpresa.Rows[posicionTabla][7].ToString();

                string visitaNumero = tablaProyectosEmpresa.Rows[posicionTabla][8].ToString();
                if (visitaNumero.Equals("1"))
                {
                    LabelVisitaPermitida.Text = "Si";
                }
                else
                {
                    LabelVisitaPermitida.Text = "No";
                }

                TextObjetivo.Text = tablaProyectosEmpresa.Rows[posicionTabla][9].ToString();
            }
        }


        protected void ButtonDescargar_Click(object sender, EventArgs e)
        {
            pdf.Portada();
        }
        protected void ButtonCatalogoP_Click(object sender, EventArgs e)
        {
            Response.RedirectPermanent("catalogoInicio.aspx");

        }

        protected void ButtonHome_Click(object sender, EventArgs e)
        {
            Response.RedirectPermanent("Default.aspx");
        }
    }
}